﻿#region Copyright (c) 2011, thinktecture (http://www.thinktecture.com)

/*
   thinktecture.UIAnnotations was developed by Jörg Neumann.
   Copyright (c) 2011, thinktecture (http://www.thinktecture.com).
   All rights reserved, comes as-is and without any warranty. Use of this
   source file is governed by the license which is contained in LICENSE.TXT 
   in the distribution.
*/

#endregion

using System;
using System.Linq;
using System.Windows;
using System.Windows.Data;
using System.Windows.Controls;

namespace Thinktecture.DataForm
{
    public sealed class ControlMapping
    {
        public Type DataType { get; set; }
        public string DataPropertyName { get; set; }
        public Type ControlType { get; set; }
        public string BindingPropertyName { get; set; }
        public Binding Binding { get; set; }
        public DataTemplate ColumnTemplate { get; set; }
        public DefaultableBoolean IsRequired { get; set; }
        public DefaultableBoolean IsReadOnly { get; set; }
        public string Description { get; set; }
    }

    public enum DefaultableBoolean
    {
        Default,
        True,
        False
    }
}
